home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1995 March / macformat-022.iso / Shareware City / Developers / src / out-of-phase-102-c / OutOfPhase 1.02 Source / OutOfPhase Folder / ASTFuncCall.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-11-23  |  1.5 KB  |  52 lines  |  [TEXT/KAHL]

  1. /* ASTFuncCall.h */
  2.  
  3. #ifndef Included_ASTFuncCall_h
  4. #define Included_ASTFuncCall_h
  5.  
  6. /* ASTFuncCall module depends on */
  7. /* MiscInfo.h */
  8. /* Audit */
  9. /* Debug */
  10. /* Definitions */
  11. /* ASTExpressionList */
  12. /* TrashTracker */
  13. /* Memory */
  14. /* ASTExpression */
  15. /* PcodeObject */
  16. /* CompilerRoot */
  17. /* SymbolTableEntry */
  18. /* SymbolList */
  19. /* PromotableTypeCheck */
  20. /* ASTOperand */
  21.  
  22. #include "PcodeObject.h"
  23. #include "CompilerRoot.h"
  24.  
  25. struct ASTFuncCallRec;
  26. typedef struct ASTFuncCallRec ASTFuncCallRec;
  27.  
  28. /* all memory allocated from this module is done through TrashTracker */
  29.  
  30. /* forwards */
  31. struct TrashTrackRec;
  32. struct ASTExprListRec;
  33. struct ASTExpressionRec;
  34.  
  35. /* create a new function call node.  the argument list can be NIL if there are */
  36. /* no arguments. */
  37. ASTFuncCallRec*            NewFunctionCall(struct ASTExprListRec* ArgumentList,
  38.                                             struct ASTExpressionRec* FunctionGeneratorExpression,
  39.                                             struct TrashTrackRec* TrashTracker, long LineNumber);
  40.  
  41. /* type check the function call node.  this returns eCompileNoError if */
  42. /* everything is ok, and the appropriate type in *ResultingDataType. */
  43. CompileErrors                TypeCheckFunctionCall(DataTypes* ResultingDataType,
  44.                                             ASTFuncCallRec* FunctionCall, long* ErrorLineNumber,
  45.                                             struct TrashTrackRec* TrashTracker);
  46.  
  47. /* generate code for a function call. returns True if successful, or False if it fails. */
  48. MyBoolean                        CodeGenFunctionCall(struct PcodeRec* FuncCode,
  49.                                             long* StackDepthParam, ASTFuncCallRec* FunctionCall);
  50.  
  51. #endif
  52.